package com.yht.redbook.data.align.domain.mapper;

import org.apache.ibatis.annotations.Param;

public interface InsertRecordMapper {

    /**
     * 笔记点赞数：计数变更
     *
     * @param tableNameSuffix
     * @param noteId
     */
    void insert2DataAlignNoteLikeCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("noteId") Long noteId);

    /**
     * 用户点赞数：计数变更
     *
     * @param tableNameSuffix
     * @param userId
     */
    void insert2DataAlignUserLikeCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("userId") Long userId);

    /**
     * 笔记收藏数：计数变更
     *
     * @param tableNameSuffix
     * @param noteId
     */
    void insert2DataAlignNoteCollectCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("noteId") Long noteId);

    /**
     * 用户收藏数：计数变更
     *
     * @param tableNameSuffix
     * @param userId
     */
    void insert2DataAlignUserCollectCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("userId") Long userId);

    /**
     * 用户已发布笔记数：计数变更
     *
     * @param tableNameSuffix
     * @param userId
     */
    void insert2DataAlignUserNotePublishCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("userId") Long userId);

    /**
     * 用户关注数：计数变更
     *
     * @param tableNameSuffix
     * @param userId
     */
    void insert2DataAlignUserFollowingCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("userId") Long userId);

    /**
     * 用户粉丝数：计数变更
     *
     * @param tableNameSuffix
     * @param targetUserId
     */
    void insert2DataAlignUserFansCountTemplate(@Param("tableNameSuffix") String tableNameSuffix, @Param("targetUserId") Long targetUserId);
}
